home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Best of MacTutor - S…e Code for Volumes 1 to 5
/
The Best of MacTutor - Source Code for Volume 1-5 (Wayzata Technology)(6031)(1990).bin
/
Source Code
/
#49 (Oct 89)
/
Jorgs Source
/
mainMT.c
< prev
next >
Wrap
C/C++ Source or Header
|
1989-08-18
|
2KB
|
78 lines
/*
* Objects-In-C test program
*
* based on the test program by John Wainwright © 1988
* J. Langowski/MacTutor 1989
*/
#include "oic.h"
#include "generics.h"
enum { TITLE = 1, BOUNDS, KIND };
extern class Window;
main()
{
object rect1;
object box1, box2;
register int i;
extern class Coord, Box, Window, FillRRect;
object w;
static Rect bounds = {100, 100, 350, 350};
GenericTable *gen;
MaxApplZone();
/*
* initialize OIC.
*/
InitOIC();
InitSysClasses();
InitTestClasses();
InitNameClasses();
print((box1 = New(Box, 100.0, 100.0, 200.0, 200.0)));
print((rect1 = New(FillRRect, 50.0, 50.0, 150.0, 150.0, 4.0, 4.0, gray)));
w = New(Window, BOUNDS, &bounds,
TITLE, "\pMacTutor",
KIND, (long)rDocProc,
END);
add(w, box1, New(Box, 150.0, 150.0, 190.0, 190.0), rect1, END);
draw(w);
print(w);
box2 = New(Box, 10.0, 10.0, 20.0, 20.0);
offset(box2, 1.0, 4.0);
add(w, box2, END);
draw(w);
print(w);
/*
* check the "cantDo", "CanYouDo" mechanism
*/
gprintf(screen, "%s append\n", CanYouDo(w, appendGeneric) ? "I can do " : "I can't do ");
gprintf(screen, "%s equal\n", CanYouDo(w, equalGeneric) ? "I can do " : "I can't do ");
gprintf(screen, "%s softBind\n", CanYouDo(w, softBindGeneric) ? "I can do " : "I can't do ");
/*
* print the list of generics
*/
gprintf(screen, "the generics ...\n\n");
for (i = 0, gen = generics; gen != NULL; i++, gen = gen->gen_next)
gprintf(screen, "%d: %s()\n", i, GenericName(gen));
gprintf(screen, "all done\n");
}
InitTestClasses()
{
InitCoordClass();
InitBoxClass();
InitWindowClass();
InitFillRRect();
}